// Core
#include "base/Base.h"
#include "platform/Toolkit.h"
#include "platform/Keyboard.h"
#include "platform/Mouse.h"

#include "base/FileSystem.h"
#include "math/MathUtil.h"
#include "base/Logger.h"
#include "base/SerializerManager.h"
#include "base/SerializerJson.h"
#include "base/SerializerBinary.h"
#include "base/Serializable.h"
#include "base/Cache.h"
#include "base/ThreadPool.h"
#include "base/StringUtil.h"
#include "base/System.h"
#include "base/Buffer.h"
#include "base/Ptr.h"
#include "base/Ref.h"

// Math
#include "math/Rectangle.h"
#include "math/Vector2.h"
#include "math/Vector3.h"
#include "math/Vector4.h"
#include "math/Quaternion.h"
#include "math/Matrix.h"
#include "scene/Transform.h"
#include "math/Ray.h"
#include "math/Plane.h"
#include "math/Frustum.h"
#include "math/BoundingSphere.h"
#include "math/BoundingBox.h"
#include "math/Curve.h"

// Graphics
#include "material/Image.h"
#include "material/Texture.h"
#include "scene/Mesh.h"
#include "scene/MeshFactory.h"
#include "material/ShaderProgram.h"
#include "material/Material.h"
#include "scene/VertexFormat.h"
#include "material/VertexAttributeBinding.h"
#include "scene/Drawable.h"
#include "scene/Model.h"
#include "scene/Camera.h"
#include "scene/Light.h"
#include "scene/Node.h"
#include "scene/Scene.h"
#include "objects/Font.h"
#include "objects/SpriteBatch.h"
#include "objects/Sprite.h"
// #include "objects/Text.h"
#include "objects/TileSet.h"

//#include "platform/ScreenDisplayer.h"
#include "objects/HeightField.h"
#include "objects/Terrain.h"
#include "objects/TerrainPatch.h"
#include "scene/AssetManager.h"

// #include "objects/BillboardSet.h"

#include "objects/TextureAtlas.h"

// Animation
#include "animation/AnimationController.h"
#include "animation/AnimationTarget.h"
#include "animation/AnimationValue.h"
#include "animation/Animation.h"
#include "animation/AnimationClip.h"
